System and Method For Computerized Ordering Among Replaceable or Otherwise Associated Products

ABSTRACT

The present invention discloses a system and a method for computerized ordering at least one first product being a part of a computerized shopping list. The method comprising a) receiving at least part of the computerized shopping list, said part comprising the first product, b) generating a list of associated products comprising at least one second product associated with the first product in accordance with an association criterion, c) generating an associated proposal by adjusting the list of associated products in accordance with adjustment criterion. The adjustment criteria related to at least one characteristic selected from a group comprising: quantity of the first product in the shopping list; price-quality relationship between the first product and the second product; user preferences in respect to the first product and/or second product; delivery characteristic in respect to the first product and/or second product; package of the first product and/or second product. The association criterion comprises at least one criterion selected from a group comprising: criterion related to similarity relationship between the first and the second products; criterion related to product—product&#39;s part relationship between the first and the second products; criterion related to product—bundled product relationship between the first and the second products; criterion related to product—accompanying product relationship between the first and the second products.

This application claims the benefit of prior U.S. provisional patent application Nos. 60/655,410 filed Feb. 24, 2005 and 60/719,963 filed Sep. 26, 2005, the contents of which are hereby incorporated by reference in their entirety.

FIELD OF INVENTION

The invention relates to the field of computerized shopping and, more specifically, to systems and methods for computerized ordering of replaceable or otherwise associated items.

BACKGROUND OF THE INVENTION

With the proliferation of networked computer systems, there has been a corresponding evolution of remote ordering, also called “computerized ordering”. Such remote ordering also includes remote identifying of suppliers and/or products to be ordered, and may be a base for different shopping modes, for example on-line shopping, physical shopping, on-line ordering and physical pickup, etc. Computerized ordering in some market segments (e.g. Supermarket, Food and Grocery (SFG), semiconductor components, building materials, drugstores, electronic components and spare parts, etc.) includes ordering among multiple, typically replaceable items from multiple vendors. This problem has been recognized in prior art and various systems have been developed to provide a solution, for example:

U.S. Pat. No. 5,715,444 (Danish et al.) discloses a process for identifying a single item from a family of items by presenting a user with a feature screen having a series of groupings. Each grouping represents a feature having a set of alternatives from which to select. Selected alternatives are used as selection criteria in a search operation. A result of the search operation is a revised feature screen indicating alternatives that remain available to the user for further selection and searching. The feature screen and search process, therefore, presents the user with a guided non-hierarchical parametric search to identify matching items based upon user-specified criteria and priorities. Also disclosed is an adaptation of the claimed method and system appropriate in an Internet environment.

U.S. Pat. No. 5,878,401 (Joseph) discloses an apparatus that displays alternative items for items that are out of stock in a store or the like. A request for an item is entered into a sales computer. The computer determines from a database whether the requested item is available. If the item is unavailable, the computer determines alternative items that are available for sale. These available alternative items are interactively displayed for the customer. The alternative items are determined from an alternative item database wherein each item is categorized with alternative items. A mass data storage device stores an image of each alternative item. A method of determining and displaying alternative items includes the steps of: inputting a request for an item; determining the availability of the requested item and alternative items for the requested item if it is unavailable; and interactively displaying the alternative items.

U.S. Pat. No. 6,606,603 (Alkin et al.) discloses a system for electronically ordering items having at least one supplier computer system for storing at least one catalog containing the items offered by a supplier and a customer computer system with the improvement of a public computer system comprising an index to the items in the catalogs on the at least one supplier computer system, means for querying the index on the public computer system for a desired item in response to a request for the desired item from the customer computer system, and means for generating a pointer for the customer computer system to catalog information about the desired item in the catalog on the at least one supplier system which has been identified by the query of the index.

U.S. Pat. No. 6,873,968 (Ehrlich et al.) discloses a price comparison and adjustment system which can be used in the context of an Internet environment. The system comprises a server based browser, a shopping cart manager, an extraction and verification module, a validation module, and a counter offer module. The system provides an Internet shopper with a convenient method for comparison shopping online while allowing the shopper control over the comparison-shopping search, which also enables a host merchant to counter-offer prices at rival merchants' web sites. The system also provides information about rival merchants to the host merchant, which allows the host merchant to develop an optimal pricing and counter-offer strategy. The system creates a portable virtual shopping cart that allows the Internet user to browse rival merchants without the appearance of leaving the host merchant's web site, and further allows the shopper to quickly return to the host merchant's web site to purchase items in the virtual shopping cart.

US Patent Application 2002/72,944 (Artinger) discloses a web-based method for identifying items to replace insured items. The method includes receiving item specification information from at least one of a user, a manufacturer, a distributor, a system administrator, and an authorizing agent, and utilizing a server to compare the received specification information with pre-stored information. The method also includes selecting at least one item which matches the received specification information and downloading information to the user related to the item.

US Patent application 2002/143,667 (Ho) discloses an inventory management system and method that is capable of generating lists of interchangeable parts. The system includes a database for indicating functional relationships between parts and a search engine for searching the database to identify groups of functionally interchangeable parts. The database includes a first table identifying the parts and a second table indicating the functional relationships between the parts. The search engine recursively searches the first and second tables to dynamically generate the lists of interchangeable parts. This permits a user to quickly determine what parts are available in inventory for manufacturing tasks, and promotes more efficient utilization of inventoried parts.

US patent Application 2004/19,536 (Ashkenazi et al.) discloses a system and method for facilitating online comparison shopping, including a similarity engine, a navigational system, and a step skipping system. The system and method according to the invention include a method for determining similarity between two preferably disparate products. The system and method also preferably include a method of increasing efficiency of navigation in a comparison shopping site based on product coverage and product entropy. The system and method further include a method of step-skipping to quicken user navigation through a comparison shopping site.

US Patent Application 2004/34,571 (Ferman et al.) discloses a network-based ordering system comprising one or more client devices connected to a server through a network, each client device operated by a user; one or more merchant devices connected to the server through a network, each merchant device associated with one or more merchants; a memory in which is stored a merchant product database, the database including a plurality of product data items representing products available from each merchant; a display configured to display to a user information identifying one or more product data items in the memory; a request processor configured to receive a user order from a user for one or more product data items; a dispatcher configured to receive the user order from the request processor, to transmit the user order to a delivery agent for delivery of the ordered goods to the user; and an inventory manager configured to receive a user order from the dispatcher and to update the merchant product database.

US Patent Application 2004/117,276 (Kettler) discloses an online list generation process including a product database having a product list that itemizes products offered for sale by a merchant. A user interface allows a potential customer to access the product database and retrieve at least a portion of the product list. A user selection process enables the potential customer to select one or more of the individual products itemized in the retrieved portion of the product list. A shopping list is generated that itemizes the individual products that the potential customer intends to pick up from the merchant's place of business. The method further includes offering the potential customer a substitute product upon determining that a product on the shopping list is out of stock.

US Patent Application 2004/167,833 (Schickler) discloses a parts search system capable of defining a correct part despite multiple definitions for replacement parts. The system employs a database or databases including: (a) the names, abbreviations, misspellings and word combinations for parts used in the assemblage of a device; (b) the possible manufacturers, parts and part numbers used in the assemblage of a device; and (c) applications, illustrations and other information related to the parts. A single code number, such as a VMRS code issued by the Technology and Maintenance Council of the American Truckling Associations, is assigned to each part. This code is used to link together and cross-reference all of the items in the database tables. Software is provided allowing the user to enter a multiplicity of choices of a word, abbreviation, misspelling, word combination, code, part number, and/or manufacturer and arrive at the correct part description, application, illustration and part number.

International Application WO004/3,850 discloses a searchable database comprising a multiplicity of tables including an attributes table and a values table for a multiplicity of target search items constructed and arranged so that selection of values for one or more target search item attributes, yields an attribute-value construct specifying a particular one of said target search items and precluding an indeterminate search result. Such a database may be employed in an online comparison shopping system comprising a database containing product information of multiple vendors, manufacturers and/or products and a user interface generating a virtual shopping cart, and constructed and arranged to enable a user to selectively aggregate an order in said virtual shopping cart, comprising products represented in said database, and means for electronically disaggregating said order to generate vendor-specific orders to respective vendors.

SUMMARY OF THE INVENTION

There is a need in the art to provide a system and method which substantially reduces or eliminates the drawbacks of hitherto known solutions and in some of their aspects oriented to special features of computerized ordering among multiple products, as, for example:

-   -   Associated products, wherein the association may include:         -   similarity relationship of the products, including potential             substitutions in case of missing items, and potential             replacements by products with other value, e.g. less             expensive, higher quality, etc.);         -   product—product's part relationship (e.g. components, spare             parts, etc.);         -   product—bundled products relationship, e.g. products within             promotional offering;         -   product—accompanying products relationship, including             accessories related to the product, complementary products             (e.g. drop cloths, paint rollers and turpentine may be             complementary products for a paint brush), etc.     -   Hidden identities, similarities and differences between         products, e.g. replaceable products may have different names or         may be offered under different brands; also non-replaceable         products may have similar names;     -   Package-related alternatives (e.g. “Sugar, 2 Kg” may be supplied         by 4×500 gr sugar bags, by 2×1 Kg sugar cans or by a 1×2 Kg         sugar can), etc.;     -   Delivery-related alternatives (e.g. when replaceability of items         depends on delivery time);     -   Dynamic user's preferences and optimization criterion (e.g.         preferred and/or restricted products, ingredients,         manufacturers, brands, suppliers, shops, packaging, delivery         time, etc), etc.

According to certain aspects of the present invention there is provided a method for computerized ordering at least one product being a part of a shopping list, the method comprising:

-   -   a. receiving at least part of the computerized shopping list,         said part comprising the first product,     -   b. generating a list of associated products comprising at least         one second product associated with the first product in         accordance with an association criterion,     -   c. generating an associated proposal by adjusting the list of         associated products in accordance with adjustment criterion         related to at least one characteristic selected from a group         comprising:         -   quantity of the first product in the shopping list;         -   price-quality relationship between the first product and the             second product;         -   user preferences in respect to the first product;         -   user preferences in respect to the second product;         -   delivery characteristic in respect to the first product;         -   delivery characteristic in respect to the second product;         -   package of the first product         -   package of the second product.

Said adjustment of associated proposal may be provided simultaneously with generation of the list of associated products, with a predefined delay, per predefined event, per user request, etc.

In accordance with further aspects of the present invention, the association criterion comprises at least one criterion selected from a group comprising:

-   -   criterion related to similarity relationship between the first         and the second products;     -   criterion related to product—product's part relationship between         the first and the second products;     -   criterion related to product—bundled product relationship         between the first and the second products;     -   criterion related to product—accompanying product relationship         between the first and the second products.

The similarity relationship includes ability of substituting the first product by the second product if the first product is not available for purchasing, replaceability of the first product by the second product, etc.

The association between the first product and the second product may be predefined or calculated. In accordance with further aspects of the present invention the first and the second products may be characterized by corresponding attributes and values thereof, and the method further comprises calculating an association distance based on the values of at least part of the attributes (relevant set of attributes) and providing association between the first product and the second product if the calculated association distance meets a matching threshold. The values of attributes may be weighted in accordance with at least one priority factor with respect to at least one attribute.

The relevant set of attributes, the priority factor and the matching threshold may be defined in accordance with the association criterion and/or in accordance with a product group.

In accordance with other aspects of the present invention, there is provided a system for computerized ordering at least one first product being a part of a computerized shopping list, the system comprising a data repository functionally coupled with a processor, said repository storing at least part of the computerized shopping list, said part comprising the first product, wherein the processor is configured to generate an associated proposal comprising at least one second product associated with the first product in accordance with an association criterion, said associated proposal to be generated in accordance with adjustment criterion related to at least one characteristic selected from a group comprising:

-   -   quantity of the first product in the shopping list;     -   price-quality relationship between the first product and the         second product;     -   user preferences in respect to the first product;     -   user preferences in respect to the second product;     -   delivery characteristic in respect to the first product;     -   delivery characteristic in respect to the second product;     -   package of the first product     -   package of the second product.

In according with other aspects of the present invention, there is provided a method for computerized ordering at least one first product being a part of a computerized shopping list, the method comprising:

-   -   a. receiving at least part of the computerized shopping list,         said part comprising the first product,     -   b. generating an associated proposal comprising at least one         second product associated with the first product in accordance         with an association criterion,         wherein the first and second products are characterized by         corresponding attributes and values of thereof, the association         between the first product and the second product is provided in         accordance with association distance calculation based on the         values of at least part of the attributes giving rise to a         relevant set of attributes; the association criterion comprises         at least one criterion selected from a group comprising:     -   criterion related to product—product's part relationship between         the first and the second products;     -   criterion related to product—bundled product relationship         between the first and the second products;     -   criterion related to product—accompanying products relationship         between the first and the second products.

In accordance with further aspects of the present invention, the method further comprises adjustment of the associated proposal in accordance with adjustment criterion related to at least one characteristic selected from a group comprising:

-   -   price of the first product     -   price of the second product     -   quantity of the first product in the shopping list;     -   price-quality relationship between the first product and the         second product;     -   user preferences in respect to the first product;     -   user preferences in respect to the second product;     -   delivery characteristic in respect to the first product;     -   delivery characteristic in respect to the second product;     -   package of the first product     -   package of the second product.

In accordance with further aspects of the present invention the values of attributes may be weighted in accordance with at least one priority factor with respect to at least one attribute. The association between the first product and the second product is provided only if the calculated association distance meets a matching threshold.

The relevant set of attributes, the priority factor and the matching threshold may be defined in accordance with the association criterion and/or in accordance with a product group.

In accordance with other aspects of the present invention, there is provided a system for computerized ordering at least one first product being a part of a computerized shopping list, the system comprising a data repository functionally coupled to a processor, said repository storing at least part of the computerized shopping list, said part comprising the first product, wherein the processor is configured to generate an associated proposal comprising at least one second product associated with the first product in accordance with an association criterion, and wherein the first and second products are characterized by corresponding attributes and values of thereof, and the association between the first product and the second product is provided in accordance with association distance calculations based on the values of at least part of the attributes, and the association criterion comprises at least one criterion selected from a group comprising:

-   -   criterion related to product—product's part relationship between         the first and the second products;     -   criterion related to product—bundled product relationship         between the first and the second products;     -   criterion related to product—accompanying products relationship         between the first and the second products.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to understand the invention and to see how it may be carried out in practice, a preferred embodiment will now be described, by way of non-limiting example only, with reference to the accompanying drawings, in which:

FIG. 1 illustrates a generalized diagram of a system for computerized ordering in accordance with certain embodiments of the invention.

FIG. 2 illustrates a generalized flow diagram showing the principal stages of operating the ordering process in accordance with certain embodiments of the invention.

FIG. 3 illustrates a generalized flow diagram showing the principal stages of generating an associated proposal in accordance with certain embodiments of the invention.

FIG. 4 illustrates a generalized flow diagram showing the principal stages of generating a list of associated products.

FIGS. 5 a and 5 b illustrate exemplified calculations of association distances in accordance with certain embodiments of the invention.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the invention. However, it will be understood by those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components and circuits have not been described in detail so as not to obscure the present invention.

Unless specifically stated otherwise, as apparent from the following discussions, it is appreciated that throughout the specification discussions utilizing terms such as processing, “computing”, “calculating”, “determining”, or the like, refer to the action and/or processes of a computer or computing system, or processor or similar electronic computing device, that manipulate and/or transform data represented as physical, such as electronic, quantities within the computing system's registers and/or memories into other data, similarly represented as physical quantities within the computing system's memories, registers or other such information storage, transmission or display devices.

Embodiments of the present invention may use terms such as processor, computer, apparatus, system, sub-system, module, unit, device (in single or plural form) for performing the operations herein. This may be specially constructed for the desired purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), electrically programmable read-only memories (EPROMs), electrically erasable and programmable read only memories (EEPROMs), magnetic or optical cards, or any other type of media suitable for storing electronic instructions, and capable of being coupled to a computer system bus.

The processes/devices (or counterpart terms specified above) and displays presented herein are not inherently related to any particular computer or other apparatus. Various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized apparatus to perform the desired method. The desired structure for a variety of these systems will appear from the description below. In addition, embodiments of the present invention are not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the inventions as described herein.

The term “computerized trolley” or “trolley” used in this patent specification includes any kind of computerized interface allowing a user to provide at least one of the following: select (specify) products the user intends to purchase, review the selected products, make necessary modifications or additions, and order the products in accordance with a selection. The products may be manually selected by the user (e.g. by browsing along the product images and pointing to products, looking for a product by spelling its name or other information about it, using a textual list of products, by voice activated selection, etc.), automatically selected by a computer in accordance with predefined rule(s) (e.g. in accordance with the previous order), etc.

The term “computerized shopping list” or “shopping list” used in this patent specification should be expansively construed to cover any kind of set of products identified as intended for ordering and constituting a part of the computerized trolley.

The term “criterion” used in this patent specification should be expansively construed to cover any compound criterion, including, for example, several criteria and/or their combination.

Referring to FIG. 1, there is schematically illustrated a system (100) for computerized ordering in accordance with certain embodiments of the present invention. One or more user interfaces (111, 112) are connected to a computer (113). The user interface may be associated with any communication device having input and display capabilities (e.g. personal computer, workstation, PDA, telephone, WebTV device, etc.) and capable to communicate with the computer (113) directly or via telecommunication network (e.g. Wireline or Wireless Public Telephone Networks, Internet, Intranet, cable network, etc.). In certain embodiments of the present invention the user interface may comprise a web-browser. In certain embodiments of the invention the user's interface may be directly associated with the computer (113).

The computer (113) may be a single and/or stand-alone computer or its functionality may be distributed among several different computers ruling several applications. In certain embodiments of the present invention the computer (113) may be a server-based host.

The computer (113) contains a processor (114) linked with a products database (115) and, optionally, with other databases, as for example, a manufacturers/suppliers database (116), a shops database (117), a users database (118), orders database (119), etc. The processor provides necessary processing and management of data stored in the databases as well as management of a unified catalogue (120). The processor executes calculations and data management necessary for the ordering process in accordance with the present invention and contains necessary algorithms and programs. In certain embodiments of the invention the calculations and/or data management (or part of them) may be executed by external systems.

The product database (115) contains product-related information. Products are typically characterized by attributes as, e.g. specific ingredients, weight, packing, manufacturer, supplier, shop, brand, price (term “price” is related hereinafter to any aspect of the prices provided by manufacturer, supplier and/or seller—including discounts, coupons, “buy one get two”, etc), expiry period, etc. and values thereof.

The products database may also contain linking of products with one or more product groups as will be further explained with reference to the unified catalog (120).

The products database also contains, for each or some of the products, association-related information including information related to associated products and/or association-related values thereof. Associated products include, by way of not limiting example,

-   -   similar products, for example potential substitutions (e.g.         alternatives in case of missing items), replacements (e.g.         alternatives with other value, e.g. less expensive, higher         quality, etc.) of the product, etc.;     -   parts of the product, e.g. components, spare parts of the         product, etc.     -   bundled products, e.g. for promotional offering     -   accompanying products, e.g. complimentary products, accessories         related to the product, etc.

The association-related values will be further explained with reference to FIGS. 4-5.

The manufacturers'/suppliers' database (116) contains ordinary details on manufacturers and suppliers. The shops database (including manufacturers and suppliers directly supplying to end-users) (117) contains ordinary details on shops as well as delivery related information (e.g. delivery schedules and prices for different geographical regions, etc.) and pricing information of the various items sold in the shop.

Each of the above databases may also contain statistical information related to products, manufacturers, suppliers and/or shops (e.g. statistical ranking per usage, users' preferences, etc.). For example, the statistical information may include the ordered quantities for each product, distribution of ordered products and entire orders per shops, suppliers, manufacturers, how many users put the products/shops/suppliers/manufacturers on the black list (i.e. “never suggest this to me”) or white list (i.e. “this is always the preferred alternative”), geographic or demographic-related distribution of orders, etc.

The users' database (118) contains personal information about users (e.g. name, address, account and paying details, etc.). The database may also contain information about personal preferences (e.g. preferred and/or restricted ingredients, manufacturers, brands, suppliers, shops, packaging, delivery time, etc.) as well as historical and statistical information (e.g. previous orders, favorite items, amount of money spent in each shopping session, etc).

In accordance with certain embodiments of the invention the computerized unified catalogue (120) comprises product-related information (or part of it) from the above databases. The products (and related information) in the catalogue may be arranged in groups. In certain embodiments of the invention a product group comprises one or more products associated with a generic product and/or a primary product. The groups may be organized in hierarchical, matrix, relative or other manner, while several groups may contain the same product. The products may be organized in several product groups having the same association criteria and generic/primary product (e.g. all yogurt products may be organized in one group associated with generic product “yogurt” or may be organized in several groups in accordance with at least one of yogurt attributes (e.g. manufacturer, % fat, etc.). The products in the product group may be also associated between themselves in accordance with the same or other association criteria. The association of products may be provided per different criterion. The association criterion may be products similarity (products associated with at least one generic product or a primary product); association between a primary product and its components/bundled products/accompanying products, etc. For example, decaffeinated coffee A and B and caffeinated coffee C may be associated as similar products with a generic product “coffee”; a sugar M may be associated with coffee B as a complementary products; battery X, battery Y and charger Z may be associated with mobile phone V as accessories and between themselves as similar products being accessories for mobile phone V; battery X and battery Y may be associated as similar products with a generic product “battery” and/or “battery for a mobile telephone” and/or “battery for a mobile telephone V”; etc. In certain embodiments of the invention the association may be provided to (or between) a combination of products (e.g. shampoo+conditioner, products constituting a home cinema, etc.)

The similar products within a product group are sometimes, but not always, replaceable. For example, decaffeinated coffee A may be replaceable with decaffeinated coffee B, but is probably not replaceable with caffeinated coffee C although both A, B and C belong to the group of products associated with a generic product “Coffee”. The similar products with different price may be, for example, not substitutable in case of missing items, but replaceable if providing higher quality, etc.).

As well as the products database, the unified catalogue may contain, for each or some of the products, a list of associated products and/or association-related values referred hereto as association-related information.

In certain embodiments of the present invention the computer (113) is configured to generate and present to a user (e.g. via user's interface) a personal catalogue (121, 123) based on data from the databases and/or the unified catalog, user's preferences (e.g. preferred and/or restricted products; ingredients, manufacturers, brands, suppliers, shops, packaging, delivery time, etc.) and, optionally, a history of the user's ordering. The personal catalogue may be generated for a period of the user's login to the system and/or may be stored and maintained in the computer (113) and/or in a device associated with the user's interface.

Products and their grouping in the personal catalogue may be different from the unified catalog (e.g. depending on user's preferences, etc.). Typically, the personal catalogue does not contain products/manufacturers/shops/etc. included by the user in the personalized black list and/or products which are not delivered to the geographic region of the user. The personal catalogue not necessarily contains all product-related data comprised in the unified catalogue. In some cases (e.g. if a user wants to see all the products available), the personal catalogue may contain the same list of products as the unified catalogue, but, for example, with limited presentation of some product-related information and/or with different grouping.

Grouping of products (and/or combinations thereof) in association with a generic/primary product (and/or combination thereof) may be predefined, imported from third party database, generated by user and/or generated by the system in accordance with predefined rules (e.g. per user's preferences).

The personal catalogue may also comprise personalized association-related information. For example, the personalized replacement/substitution alternatives may be a subset of overall replacement/substitution alternatives contained in the unified catalogue, and in other cases may comprise replacement/substitution alternatives which are absent in the unified catalogue. For example, the unified catalog may contain three standard substitutions A, B and C for a specific product. One user may instruct the system to remove A from his personal list, while another user may specify the system to remove B and add D to his list. These changes may be done by each user either directly (i.e. explicitly mentioning a specific item) or/and by changing the association-related values of at least part of the products. Another example, in the unified catalogue, a product group of accessories for digital camera by manufacturer A may include products by different manufacturers. A user may instruct the system to limit the group to accessories provided by manufacturer A only.

The databases and the catalogues may be updated in different modes, for example, based on data received from different sources (e.g. suppliers, manufacturers, shops, agencies, Internet sites, etc.) in a push mode, per request of the computer (113) (or database manager), etc. The input of data in the catalogue may be provided manually, combined (e.g. computerized input of basic product data and manual input of association-related values) or fully automated.

The computer (113) is also capable to generate and present to each user (e.g. via user's interface) an ordering interface (trolley) (122, 124) constructed and arranged to enable a user to compile a computerized shopping list based on selection of products. In preferred embodiments of the invention the ordering is provided based on the personalized catalogue; however the ordering process (or parts thereof) specified in the present invention may be implemented also based on the unified catalogue or/and one or more databases comprising product-related information. In certain embodiments of the present invention the computer is configured to receive the computerized shopping list compiled via the ordering interface (122, 124) or otherwise (e.g. compiled by a third party, compiled by the user via third party interface, etc.). The ordering techniques of the present invention may be implemented for a shopping list fully or partly compiled externally in a manner similar to the shopping list fully compiled within the system (100). The products included in said fully or partially externally compiled shopping list shall be comprised in the product database (115) or, alternatively, the computer may be configured to be capable of matching them to the products comprised in the database.

In certain embodiments of the invention the computer is also capable to communicate with one or more third parties database(s) (for example, industry experts' assessment of replacement/substitution related values, DB of products' attributes and values thereof, DB of alternative products, etc.).

In certain embodiments of the invention the unified catalogue, the personal catalogue and/or ordering interface may be generated and/or presented by a device associated with the user's interface.

Those skilled in the art will readily appreciate that the invention is not bound by the configuration of FIG. 1; equivalent functionality may be consolidated or divided in another manner. In different embodiments of the invention, connection between the blocks and within the blocks may be implemented directly or remotely. The connection may be provided via Wire-line, Wireless, cable, Voice over IP, Internet, Intranet, or other networks, using any communication standard, system and/or protocol and variants or evolution thereof.

The described functions may be also provided while the blocks being implemented (or integrated with) different equipment. Part of data and/or databases may be implemented at third party computers. Those skilled in the art will also readily appreciate that the unified and grouped organization of product-related information (unified catalogue) and its personalized presentation (personal catalogue) described in this patent specification may be implemented by different data management tools known in the art with no need to maintain the unified catalogue and/or the personal catalogue as dedicated databases.

FIG. 2 illustrates, by way of non-limiting example, a generalized flow diagram showing the principal stages of operating the computerized ordering process in accordance with certain embodiments of the invention.

The ordering process starts with creation of unified catalogue (210) organizing the items being offered by different manufacturers, suppliers and shops in product groups. The ongoing maintenance of the unified catalogue is based on data about products/manufactures/suppliers/shops received from external sources as well as internal data about user's preferences and ordering statistics. The external sources may also include third parties databases as, for example, a database of industry experts assessment of replacement/substitution association-related values, DB of alternative products, DB of accessories, etc.).

In certain embodiments of the invention the personalized presentation of products (personal catalogue) is generated (211) during each shopping session in accordance with user preferences received from different sources, e.g.:

-   -   Personal catalogue saved from the previous session;     -   Previous order generated by the user;     -   Instructions received from the user during the shopping process;     -   Previous users' choices within replacement/substitution         alternatives;     -   Special questionnaires to be completed by users;     -   History of actual ordering, etc.

In other embodiments of the present invention, the personal catalogue may be stored and maintained in the computer (113) and/or in a device associated with the user's interface and be updated during the shopping session in accordance with information sources above.

Upon creating/updating, the personal catalogue is presented to the user (212) and enables to start compiling the computerized shopping list. The shopping list comprises the products(s) intended for ordering, information related to ordering quantity and/or corresponding price or price range. The shopping list may also comprise other information, provided by the user or/and by the system (e.g. information related to user's preferences, etc.). This fully or partly compiled shopping list is received (213) by the system (100). As was detailed with reference to FIG. 1, the system (100) may also receive (213) a fully or partly compiled shopping list from an external system.

In certain embodiments of the invention, for each or some of the products comprised in the shopping list, the system generates (214) and presents to the user an associated proposal comprising at least one associated product, and facilitates the user to select at least one of associated products instead or in addition to corresponding product in the shopping list. Said generation may be provided automatically (e.g. simultaneously with compiling the shopping list, with a predefined delay, per specific predefined event as, for example, selection a predefined product for shopping list, receiving a completed shopping list, etc.), per user request, per third party request, etc. The presentation may be provided simultaneously after generation, with a predefined delay, per specific predefined event, per user request, etc. For a shopping list comprising several products the associated proposal may be generated in accordance with a combination of the primary products. This combination may be predefined, created by the user or by the system in accordance with predefined rules. For example, if a shopping list comprises product A and product B, the associated proposal may be generated to a combination A+B (e.g. proposed replacement for a separate shampoo and conditioner bottles may be a single bottle containing a shampoo+conditioner liquid).

In certain embodiments of the present invention the user may click on the product (or group of products) to see (and select if necessary) associated products.

The associated products presented to the user (214) may have special marks supporting a process (optionally interactive) of user's choice, for example, special marks of premium/standard/basic categories thus enabling the user to easily recognize the money saving options; or indication “of origin”, i.e. if the product is specified by the user as a replacement alternative, or recommended by the system, etc.

The selection (215) of at least one associated product among associated products comprised in the associated proposal may be provided may be provided by the user and/or by the system (e.g. replacing alternative) in accordance with predefined rule(s).

After user's approval, the order may be executed in different ways known in the art, saved for further review, used for physical shopping, etc.

The statistical analysis of actual ordering (216) may be used during order specification and/or further personalization of the personal catalogue. Also the actual statistics of user's preferences and decisions (ordering) enables ranking of the products, manufacturers, suppliers and/or shops in the unified catalogue. As a result, clicking on specific product group, the user may get ranking of the products within the group per user's preferences, e.g. “72.4% of the customers preferred X, 0.02% preferred Y”, etc. In addition to that, the user may get ranking per actual ordering, e.g. “42% of the customers bought washing liquid X, 22% bought Y, and 36% bought Z” as well as ranking of products in the unified catalogue. In accordance with certain embodiments of the present invention the statistics may be also related to “two steps” shopping, wherein the first step is product selecting, and the second step—replacing with associated product or adding associated product (e.g. 22% of the shoppers initially selected product X have replaced it by product Y”).

FIG. 3 illustrates a generalized flow diagram showing the principal stages of generating an associated proposal in accordance with certain embodiments of the invention.

As was described with reference to FIG. 2, the generation of the associated proposal starts upon receiving at least a part of the shopping list and may be triggered by different events. In accordance with certain embodiments of the invention, the generation of associated proposal starts with generating (310) a list containing products associated with certain product (or combination of products), wherein the products in the list may be grouped in accordance with a type of association (e.g. similar products (with, possibly, subgroups of replacing products and substituting products), components, accompanying products, etc.); different groups may contain the same product.

In certain embodiments of the invention the generation of the list of associated products may be multi-level. For example, if the user is looking for price comparison for a digital camera by manufacturer A, the first level of the list generation may comprise replacing/substituting alternatives, the second level—accessories for each of said replacing/substituting alternatives, the third level—bundled (e.g. promotional) products, etc.

In certain embodiments of the invention the products database (or/and unified catalogue or/and personal catalogue) may contain, at least for some of the products, all necessary information necessary for search of associated products (e.g. special coding non-limiting example of which is illustrated in US Patent application 2002/143,667). Otherwise, the generation of the list of associated products may be based on association calculations as will be further detailed with reference to FIGS. 4-5.

In accordance with certain embodiments of the present invention, the list of associated products may be adjusted during or after generating in order to generate the associated proposal. The adjustment may be provided in accordance with different adjustment criterion. In certain embodiments of the present invention the list of associated products may be limited (e.g. part of groups and/or part of products in the groups) in advance or during the generation in accordance with predefined rules (for example, to generate substitution alternatives only in case of missing products or price-comparing request; to generate specific product group, e.g. components/spare parts, if the shopping list comprises at least predefined number of products from this group, to generate bundling products if a product in the shopping list is a part of promotional offering, etc.).

In certain embodiments of the invention the adjustment may be provided in accordance with user's preferences (311) in respect to the selected product (e.g. “must have”) and/or one or more associated products. For example, the list of associated products may comprise Yogurt B as a replacement for Yogurt A, but the specific user put Yogurt B in his ‘black list’. In this case Yogurt B will not be included in the associated proposal. The adjustment may be provided in accordance with other criteria (311), for example:

-   -   delivery-related characteristics in respect to the selected         and/or associated product (e.g. minimal price of order per         delivery, delivery expenses, sensitive delivery with special         handling (e.g. in refrigerator), products' expiration date,         ability/inability to get the delivery to the workplace, the need         to coordinate a physical presence when delivery arrives, etc.);     -   package/weight/volume-related characteristics in respect to the         selected and/or associated product (e.g. the list of associated         products may comprise a package of 4×500 gr sugar bags (A), 2×1         g sugar cans (B) or by a 1×2 Kg sugar can (C); the associated         proposal in accordance with adjustment criterion “not supply         sugar in paper bags” will comprise products B and C, and the         associated proposal in accordance with adjustment criterion “not         supply sugar with weight exceeding 1 Kg per item” will comprise         products A and B.

In certain embodiments of the invention the adjustment criterion may be related to quantity of the selected product (or combination of selected products) in the shopping list. The adjustment may be based on a price score as well as on another algorithm connecting the quantity of selected product(s) in the shopping list with prices of selected and associated products. For example, a selected product A may be provided with a price score determined as a unit price of product A multiplied by the quantity of product A in the shopping list. The price score of associated product B is determined as a unit price of product B multiplied by the quantity of product A in the shopping list. The product B will be included in the associated proposal only if the quantity of product A is enough to enable the difference in the price scores of the products A and B fitting a predefined criterion (e.g. predefined saving threshold).

In certain embodiments of the present invention the adjustment criteria may be related to price-quality relationship between the selected product(s) and the associated product(s). Such adjustment may be important, for example, for generating a replacement proposal oriented to provide a list of products for a user who is ready to pay extra for more value (e.g. organic food, ozone-safe product, etc.). The adjustment may be based on a quality score as well as on another algorithm connecting the quality and price of selected product(s) with quality and price of associated products. For example, selected product A and associated products B and C have respective prices P_(A)<P_(B)<P_(C), and a quality related attribute with respective values α<β<γ. Each of the products may be provided with a quality score determined as a price of the product divided by respective value of the related attribute, and, for example, P_(A)/α<P_(B)/β while P_(A)/α>P_(C)/γ. Accordingly, the associated proposal will include product C. Product B may be also included in the associated proposal if the difference in quality scores of the products A and B fits a predefined criterion.

The presentation (313) of associated proposal may be provided upon generation, in accordance with a predefined event, upon user's request, etc. In certain embodiments of the invention the system may alert the user about existing associated proposal. The associated proposal may be ranked and/or sorted (e.g. per closest match) and may be presented in whole or in part in accordance with predefined rules (e.g. present only 10 top products, present only part of proposal fitting a predefined size of the screen, etc.). In certain embodiments of the invention the user may be provided with ability to request “more products like this” and/or select specific association criteria.

In certain embodiments of the present invention the price scores and the quality scores may be considered as attributes for association calculations described with reference to FIG. 4.

For multi-level generation of the list of associated products, the adjustment of proposal may be provided for each level independently or for the entire list. For example, if a digital camera by manufacturer B is cheaper than the replaceable camera by manufacturer A and the accessories for the camera by manufacturer B are more expensive than the accessories for the camera by manufacturer A, the price score adjustment may be provided separately for camera and accessories or for the entire combination of the camera+accessories.

Referring to FIG. 4, there is illustrated a generalized flow diagram showing the principal stages of generating a list of associated products (310).

As was mentioned with reference to FIG. 1, the product database (and/or unified catalogue and/or personal catalogue) comprises for each or some of the products one or more attributes characterizing the product and corresponding values thereof. Generating the list of associated products starts with specifying a set of attributes corresponding to primary/generic product and the association criteria (410). In accordance with certain embodiments of the invention the attributes contained in the set may depend on a primary/generic product (or combination of products), association criteria (e.g. replacing products, substituting products, components, accompanying products, promotion offering, etc.). In certain embodiments of invention a set of attributes may be specified by specifying a product group (e.g. a group of accessories for digital camera A, a group of replacement for yogurt B, etc.). For each or some of combinations of the primary/generic product and association criteria the set of attributes may be predefined, selected by the user and/or generated by the system in accordance with predefined rules (e.g. per user's preferences).

For example, the following attributes and values may be relevant for the products associated with primary product “Yogurt” for replacing type of association:

-   -   % fat (0/1.5/3/5/9/15)     -   Type (Plain/with Fruit)     -   Manufacturer (Danona/Nestle/Benecol/etc.

Flavor (Strawberry/Vanilla/Peach/Chocolate/Apple/etc

-   -   Environment: Organic/Not Organic

After the set of attributes is specified, the system may start calculating an association distance (412). The term “association distance” used in this patent specification includes a value characterizing a degree of association of a pair of products, typically associated with the same primary/generic product (the primary product may be one of the products in the pair). In accordance with certain embodiments of the present invention, the value may be presented as a mathematical function that converts differences in products' attributes into a numerical value. The smaller the association distance—the higher association degree between the products.

In a simplified non-limiting example illustrated in FIG. 5 a for a pair of yogurts, any difference in the values of a specific attribute is marked as ‘1’ and identity is marked as ‘0’. The association distance, by way of non-limiting example, is calculated as a sum of differences in values corresponding to the specified set of parameters.

It will be understood that calculation of differences between the numeric values of attributes may be provided in different manners, for example, as arithmetical difference (equal to 1.5 between 1.5% fat and 3% fat; equal to 2 between 3% fat and 5% fat, etc.), as a weighed function, a non-symmetrical function (e.g. the difference is equal to 1 between 5% fat selected product and 3% fat associated product and equal to 2 between 3% fat selected product and 5% fat associated product), etc. The rules for calculating differences between attributes' values may differ for different product groups and/or different association criteria.

The numeric values for qualified attributes may be assigned in accordance with expert assessments or calculated in accordance with algorithms known in the art and evolutions thereof. The rules for converting the qualified values into quantified values may differ for different product groups or different association criteria.

In certain embodiments of the invention, importance of attributes within the set may be different for different association criteria, different users, etc. Accordingly, one or more attributes may be provided with a priority factor. The priority factor may be predefined (e.g. per association criteria) or assigned (411) by the user or by the system in accordance with predefined rules. The priority factor may be assigned per a product group or per each product separately. In a simplified non-limiting example illustrated in FIG. 5 b, the priority factor is implemented as a weight for difference of values of a specific attribute (3 for yogurt's type and 60 for environment). The priority factor may be implemented in other ways, e.g. as a weight for each difference grade within an attribute values (e.g. if specified that the priority factor is equal to number of grades within the difference of values, the priority factor for difference between 0% and 1.5% is equal to 1, between 0% and 3% is equal to 2, between 0% and 5% is equal to 3, between 0% and 9% is equal to 4, etc.). The above dependency of priority factor and number of grades may be nonlinear (e.g. the priority factor for difference between 0% and 1.5% is equal to 1, between 0% and 3% is equal to 4, between 0% and 5% is equal to 7, between 0% and 9% is equal to 11, etc.). Moreover, a user who sticks to a low-fat diet may specify that priority factor for differences between 0%, 1.5% and 3% is zero, while anything from 5% fat and above gets the priority factor of 100, thus practically taking such products from replacing alternatives.

The association distances for different pairs of the products for different association criteria may be calculated off-line (or imported from a third party database) and stored in the product database. Alternatively, they may be calculated during generation of the list of associated products (one product may be compared simultaneously with numerous other products) and, optionally, stored in the database. In certain embodiments of the present invention calculation of the associated distances is provided only between pairs of products within the same product group.

If the calculated association distance fits a matching threshold (414), the products in the pair are regarded as associated. The matching threshold may depend on the primary/generic product, association criteria, user preferences, etc. The matching threshold may be predefined (e.g. per association criteria, per primary/generic product, etc.) or assigned (413) by the user or by the system in accordance with predefined rules. The matching threshold may be assigned per a product group or per each product separately.

The association-related values of a product stored in the database (and/or in the unified catalogue and/or personal catalogue) may include at least one of the following:

-   -   association distances with one or more products calculated for         one or more association criteria;     -   set of attributes for one or more association criteria for         calculating an association distance;     -   set of rules for converting qualified values into quantified         values     -   set of rules for calculating differences in values of attributes     -   priority factors for one or more association criteria for         calculating the association distance;     -   matching threshold for one or more association criteria.

In certain embodiments of the invention the calculation of associated distance may be provided and estimated for subsets of the specified set of attributes. For example, if the set of attributes include weight or volume, the calculations of replaceable products may be provided in at least two steps:

1) specifying associated products without considering weight/volume/package attributes, and then

2) calculating association distance per weigh/volume/package attributes among the products specified in the previous step and matching the result to allowable discrepancy (matching threshold). For example, 4×500 gr sugar bags are replaceable by 2×1 Kg sugar cans or by a 1×2 Kg can of the same sugar. If, for example, the product database contains the same sugar in packages of 500, 750 and 1100 grams, the matching threshold is 15% and the user has selected 2×500 grams, the package of 1100 grams will be considered as a replacing alternative, while the package of 750 grams—as non-replacing.

The calculations of association distance may be provided in different manners, e.g. based on an expert assessment, as described above, as described in US Patent application 2004/19,536 (Ashkenazi et al.), etc. Those skilled in the art will readily appreciate that the invention is not bound by the specific algorithm of association distance calculation, assigning the priority factor, matching and adjustment.

The invention is not bound by the sequence of operations illustrated in FIGS. 2-4; equivalent functionality may be consolidated or divided in another manner. The invention is capable of other embodiments and of being practiced and carried out in various ways.

Hence, it is to be understood that the phraseology and terminology employed herein are for the purpose of description and should not be regarded as limiting. As such, those skilled in the art will appreciate that the conception upon which this disclosure is based may readily be utilized as a basis for designing other structures, methods, and systems for carrying out the several purposes of the present invention.

It will also be understood that the invention further contemplates a machine-readable memory tangibly embodying a program of instructions executable by the machine for executing the method of the invention.

Those skilled in the art will readily appreciate that various modifications and changes can be applied to the embodiments of the invention as hereinbefore described without departing from its scope, defined in and by the appended claims. 

1. A method for computerized ordering at least one first product being a part of a computerized shopping list, the method comprising: a. receiving at least part of the computerized shopping list, said part comprising the first product, b. generating a list of associated products comprising at least one second product associated with the first product in accordance with an association criterion, c. generating an associated proposal by adjusting the list of associated products in accordance with adjustment criterion related to at least one characteristic selected from a group comprising: quantity of the first product in the shopping list; price-quality relationship between the first product and the second product; user preferences in respect to the first product; user preferences in respect to the second product; delivery characteristic in respect to the first product; delivery characteristic in respect to the second product; package of the first product package of the second product.
 2. The method of claim 1 wherein the association criterion comprises at least one criterion selected from a group comprising: criterion related to similarity relationship between the first and the second products; criterion related to product—product's part relationship between the first and the second products; criterion related to product—bundled product relationship between the first and the second products; criterion related to product—accompanying product relationship between the first and the second products.
 3. The method of claim 2 wherein the criterion related to similarity relationship between the first and the second products is related to ability of substituting the first product by the second product if the first product is not available for purchasing.
 4. The method of claim 2 wherein the criterion related to similarity relationship between the first and the second products is related to a replaceability of the first product by the second product.
 5. The method of claim 1 wherein the association between the first product and the second product is predefined.
 6. The method of claim 1 wherein the first and second products are characterized by corresponding attributes and values thereof, and the association between the first product and the second product is provided in accordance with association distance calculation based on the values of at least part of the attributes giving rise to a relevant set of attributes.
 7. The method of claim 6 wherein the relevant set of attributes is defined in accordance with the association criterion.
 8. The method of claim 6 wherein the relevant set of attributes is defined in accordance with a product group.
 9. The method of claim 6 wherein the values of attributes are weighted in accordance with at least one priority factor with respect to at least one attribute.
 10. The method of claim 9 wherein the priority factor is defined in accordance with the association criterion.
 11. The method of claim 9 wherein the priority factor is defined in accordance with a product group.
 12. The method of claim 6 further comprising determining whether the calculated association distance meets a matching threshold and providing the association between the first and the second products only if met.
 13. The method of claim 12 wherein the matching threshold is defined in accordance with the association criterion.
 14. The method of claim 12 wherein the relevant set of attributes is defined in accordance with a product group.
 15. The method of claim 1 wherein said adjustment of associated proposal is provided simultaneously with generation of the list of associated products.
 16. The method of claim 3 wherein the first and the second products are characterized by corresponding attributes and values thereof, the method further comprises calculating an association distance based on the values of at least part of the attributes and providing association between the first product and the second product if the calculated association distance meets a matching threshold.
 17. The method of claim 4 wherein the first and the second products are characterized by corresponding attributes and values thereof, the method further comprises calculating an association distance based on the values of at least part of the attributes and providing association between the first product and the second product if the calculated association distance meets a matching threshold.
 18. A system for computerized ordering at least one first product being a part of a computerized shopping list, the system comprising a data repository functionally coupled with a processor, said repository storing at least part of the computerized shopping list, said part comprising the first product, wherein the processor is configured to generate an associated proposal comprising at least one second product associated with the first product in accordance with an association criterion, said associated proposal to be generated in accordance with adjustment criterion related to at least one characteristic selected from a group comprising: quantity of the first product in the shopping list; price-quality relationship between the first product and the second product; user preferences in respect to the first product; user preferences in respect to the second product; delivery characteristic in respect to the first product; delivery characteristic in respect to the second product; package of the first product package of the second product.
 19. The system of claim 18 wherein the association criterion comprises at least one criterion selected from a group comprising: criterion related to similarity relationship between the first and the second products; criterion related to product—product's part relationship between the first and the second products; criterion related to product—bundled product relationship between the first and the second products; criterion related to product—accompanying products relationship between the first and the second products.
 20. A method for computerized ordering at least one first product being a part of a computerized shopping list, the method comprising: a. receiving at least part of the computerized shopping list, said part comprising the first product, b. generating an associated proposal comprising at least one second product associated with the first product in accordance with an association criterion, wherein the first and second products are characterized by corresponding attributes and values of thereof, the association between the first product and the second product is provided in accordance with association distance calculation based on the values of at least part of the attributes giving rise to a relevant set of attributes; the association criterion comprises at least one criterion selected from a group comprising: criterion related to product—product's part relationship between the first and the second products; criterion related to product—bundled product relationship between the first and the second products; criterion related to product—accompanying products relationship between the first and the second products.
 21. The method of claim 20 further comprising adjustment of the associated proposal in accordance with adjustment criterion related to at least one characteristic selected from a group comprising: price of the first product price of the second product quantity of the first product in the shopping list; price-quality relationship between the first product and the second product; user preferences in respect to the first product; user preferences in respect to the second product; delivery characteristic in respect to the first product; delivery characteristic in respect to the second product; package of the first product package of the second product.
 22. The method of claim 20 wherein the relevant set of attributes is defined in accordance with the association criterion.
 23. The method of claim 20 wherein the values of attributes are weighted in accordance with at least one priority factor with respect to at least one attribute.
 24. The method of claim 23 wherein the priority factor is defined in accordance with the association criterion.
 25. The method of claim 20 further comprising determining whether the calculated association distance meets a matching threshold and providing the association between the first and the second products only if met.
 26. The method of claim 25 wherein the matching threshold is defined in accordance with the association criterion.
 27. The method of claim 21 wherein said adjustment of associated proposal is provided simultaneously with association of the second product.
 28. A system for computerized ordering at least one first product being a part of a computerized shopping list, the system comprising a data repository functionally coupled to a processor, said repository storing at least part of the computerized shopping list, said part comprising the first product, wherein the processor is configured to generate an associated proposal comprising at least one second product associated with the first product in accordance with an association criterion, and wherein the first and second products are characterized by corresponding attributes and values of thereof, and the association between the first product and the second product is provided in accordance with association distance calculations based on the values of at least part of the attributes, and the association criterion comprises at least one criterion selected from a group comprising: criterion related to product—product's part relationship between the first and the second products; criterion related to product—bundled product relationship between the first and the second products; criterion related to product—accompanying products relationship between the first and the second products.
 29. The system of claim 28 further configured to adjust the associated proposal in accordance with adjustment criterion related to at least one characteristic selected from a group comprising: price of the first product; price of the second product; quantity of the first product in the shopping list; price-quality relationship between the first product and the second product; user preferences in respect to the first product; user preferences in respect to the second product; delivery characteristic in respect to the first product; delivery characteristic in respect to the second product; package of the first product package of the second product.
 30. A computer program comprising computer program code means for performing all the steps of claim 1 when said program is run on a computer.
 31. A computer program comprising computer program code means for performing all the steps of claim 20 when said program is run on a computer. 